home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / et / et3_0-a1.lha / et3 / src / Printer.C < prev    next >
C/C++ Source or Header  |  1992-04-27  |  2KB  |  111 lines

  1. #ifdef __GNUG__
  2. #pragma implementation
  3. #endif
  4.  
  5. #include "Printer.h"
  6.  
  7. #include "Class.h"
  8. #include "String.h"
  9. #include "Window.h"
  10. #include "VObject.h"
  11. #include "BorderItems.h"
  12. #include "PrintPort.h"
  13. #include "Progress.h"
  14. #include "PrintManager.h"
  15. #include "Menu.h"
  16. #include "Expander.h"
  17.  
  18. //---- Printer -----------------------------------------------------------------
  19.  
  20. NewMetaImpl(Printer, Object, (TP(pdia), TP(settings)));
  21.  
  22. Printer::Printer()
  23. {
  24.     pdia= 0;
  25. }
  26.  
  27. char *Printer::GetName()
  28. {
  29.     return "GENERIC";
  30. }
  31.  
  32. Printer::~Printer()
  33. {
  34.     //SafeDelete(pdia);
  35.     SafeDelete(settings);
  36. }
  37.  
  38. PrintPort *Printer::MakePrintPort(char*)
  39. {
  40.     return new PrintPort;
  41. }
  42.  
  43. bool Printer::CanPrint()
  44. {
  45.     return FALSE;
  46. }
  47.  
  48. bool Printer::CanSave()
  49. {
  50.     return FALSE;
  51. }
  52.  
  53. VObject *Printer::GetOptions()
  54. {
  55.     if (pdia == 0) {
  56.     pdia= DoCreatePrintDialog();
  57.     if (pdia)
  58.         pdia= new VExpander(gPoint0, new Separator, new Matte(pdia), 0);
  59.     }
  60.     return pdia;
  61. }
  62.  
  63. bool Printer::OpenPage(int pageno, Rectangle)
  64. {
  65.     gProgress->SetMessage(form("Printing Page %d", pageno));
  66.     return FALSE;
  67. }
  68.  
  69. bool Printer::ClosePage()
  70. {
  71.     return gProgress->Inc(1);
  72. }
  73.  
  74. void Printer::Start(int pagecnt)
  75. {
  76.     gProgress->Start("Printing", pagecnt);
  77. }
  78.  
  79. void Printer::Finish()
  80. {
  81.     gProgress->Stop();
  82. }
  83.  
  84. PrinterSettings *Printer::MakeSettings()
  85. {
  86.     return new PrinterSettings(Point(595, 842), Point(50), Point(50), gRect0);
  87. }
  88.  
  89. PrinterSettings *Printer::GetSettings()
  90. {
  91.     if (settings == 0) {
  92.     settings= MakeSettings();
  93.     settings->name= GetName();
  94.     }
  95.     return settings;
  96. }
  97.  
  98. VObject *Printer::DoCreatePrintDialog()
  99. {
  100.     return 0;
  101. }
  102.  
  103. void Printer::LoadSettings(PrinterSettings*)
  104. {
  105. }
  106.  
  107. void Printer::StoreSettings(PrinterSettings*)
  108. {
  109. }
  110.  
  111.